import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)

/**
 * Clase que muestra una burbuja
 * 
 * @author Cesar Antonio Medina Moreno
 * @version 01/12/2012
 */
public class Ball extends Actor
{   
    /**
     * Funcion que cambia la direccion del objeto cuando se toca un objeto pared
     */ 
    public void gira()
    {
        if(getX()<getWorld().getWidth()/2)
        turn(90);
        else
        turn(-90);
        
        move(8);
    }
    
    /**
     * Funcion que verifica se toca un objeto barra.class
     */
    public boolean barraIntersecting()
    {
        Actor bar = getOneIntersectingObject(barra.class);
        
        if(bar != null)
        return(true);
        else
        return(false);
    }
    
    /**
     * Funcion que verifica se intersecciona con un objeto ball.class
     */
    public int ballIntersecting()
    {
        Actor bb = getOneIntersectingObject(ballb.class);
        Actor bg = getOneIntersectingObject(ballg.class);
        Actor br = getOneIntersectingObject(ballr.class);
        Actor bn = getOneIntersectingObject(balln.class);
        
        if(bb != null)
        return(1);
        else if(br != null)
        return(2);
        else if(bg != null)
        return(3);
        else if(bn != null)
        return(4);
        else
        return(0);
    }
    
    /**
     * Funcion que verifica si se intersecciona con un objeto top.class
     */
    public boolean topIntersecting()
    {
        Actor tp = getOneIntersectingObject(top.class);
        
        if(tp != null)
        return(true);
        else
        return(false);
    }
}
